package com.hfzy.ihk.web.aliyuncall.vo;

/**
 * Created by YANFA on 2018/9/4.
 */
public class AsrCallOutParam extends  CallOutParam {

    /**
     * 语音文件Code,支持多文件播放和tts参数，比如2d4c-4e78-8d2a-afbb06cf6216.wav,$name$
     */
    private String voiceCode;

    /**
     * 音量,-4到4之间，建议设为1
     */
    private Integer volume =1;

    /**
     * 是否录音，可选
     */
    private Boolean recordFlag =true;

    /**
     * ASR模型ID 可选
     */
    private String asrModelId;

    /**
     * 静音时长，单位ms，1000-20000之间，超过这个范围默认10000 可选
     */
    private Integer muteTime;

    /**
     * 停顿时长，单位ms，300-1200之间，超过这个范围默认800 可选
     */
    private Integer pauseTime;

    /**
     * 开场放音文件是否可打断，默认为true，打断
     */
    private Boolean actionCodeBreak;


    /**
     * 预留给调用方使用的动态扩展id,在回调地址中带回，用于客户的开发标识需要
     */
    private String dynamicId;

    /**
     * 早媒体语音识别标识，默认是fasle，使用的话设成true
     */
    private Boolean earlyMediaAsr;

    /**
     * tts参数传递字符串，使用json格式，name和voiceCode的$name$参数对应 可选
     */
    private String voiceCodeParam;




    public String getVoiceCode() {
        return voiceCode;
    }

    public void setVoiceCode(String voiceCode) {
        this.voiceCode = voiceCode;
    }

    public Integer getVolume() {
        return volume;
    }

    public void setVolume(Integer volume) {
        this.volume = volume;
    }

    public Boolean getRecordFlag() {
        return recordFlag;
    }

    public void setRecordFlag(Boolean recordFlag) {
        this.recordFlag = recordFlag;
    }

    public String getAsrModelId() {
        return asrModelId;
    }

    public void setAsrModelId(String asrModelId) {
        this.asrModelId = asrModelId;
    }

    public Integer getMuteTime() {
        return muteTime;
    }

    public void setMuteTime(Integer muteTime) {
        this.muteTime = muteTime;
    }

    public Integer getPauseTime() {
        return pauseTime;
    }

    public void setPauseTime(Integer pauseTime) {
        this.pauseTime = pauseTime;
    }

    public Boolean getActionCodeBreak() {
        return actionCodeBreak;
    }

    public void setActionCodeBreak(Boolean actionCodeBreak) {
        this.actionCodeBreak = actionCodeBreak;
    }

    public String getDynamicId() {
        return dynamicId;
    }

    public void setDynamicId(String dynamicId) {
        this.dynamicId = dynamicId;
    }

    public Boolean getEarlyMediaAsr() {
        return earlyMediaAsr;
    }

    public void setEarlyMediaAsr(Boolean earlyMediaAsr) {
        this.earlyMediaAsr = earlyMediaAsr;
    }

    public String getVoiceCodeParam() {
        return voiceCodeParam;
    }

    public void setVoiceCodeParam(String voiceCodeParam) {
        this.voiceCodeParam = voiceCodeParam;
    }
}
